Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

OEP-66 - update comment_client, add course_roles #556

Merged
merged 3 commits into from
Feb 2, 2024

Conversation

hsinkoff
Copy link
Member

@hsinkoff hsinkoff commented Jan 23, 2024

Description

OEP-66 focuses on authorization best practices and includes descriptions of the currently in use systems. This PR adds additional information to the section on the roles used for discussions (django_comment_client_role) and adds an additional section on the proposed course_roles system.

Background

course_roles is intended to be used for course level access. The roles will be based upon permissions and access in the code will be gated by permission instead of role. They are intended to allow for greater flexibility in adding new roles. Information on the project can be found here and the tech spec is here.

To Do

last modified will need to be updated once any changes suggested on the PR are made

Copy link
Contributor

@robrap robrap left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Note: Although I am approving, I think you could just leave off the PR links.

  1. The change history is more to alert people who were up-to-date on an OEP how to get back up to date.
  2. Git blame typically already contains the source of the change based on the change history PR: https://github.com/openedx/open-edx-proposals/blame/b1714976905aa949bf578539807da05d1669ea49/oeps/best-practices/oep-0066-bp-authorization.rst


A course_roles_role can be assigned to a user in the LMS or CMS.
Some roles are granted in the LMS, some the CMS, and some both.
Which UI can be used to grant access will depend upon the values in the course_roles_roleservice database table.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is there more you can say about the how it will depend on values in the course_roles_roleservice or is it possible to link to the relevant code or docs for how this works?

Comment on lines 435 to 439
If a userrole is assigned to a course, it grants access based on the related permissions to that course.
If a userrole is assigned on an organization wide level, it grants access based on the related permissions to
all courses that belong to the organization.
If a userrole is assigned on an instance wide level, it grants access based on the related permissions to
all courses that belong to the instance.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should this be a set of bullets as well?

@feanil
Copy link
Contributor

feanil commented Feb 2, 2024

This generally looks good to me as well, just had a couple of small questions. Not blocking if you want to leave things as they are.

Copy link
Contributor

@feanil feanil left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good, I'll merge it now.

@feanil feanil merged commit 08a6f6e into master Feb 2, 2024
5 checks passed
@feanil feanil deleted the hs/oep_66_update_course_roles branch February 2, 2024 19:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants